#pragma once

#include "CoreMinimal.h"
#include "Engine/DeveloperSettings.h"
#include "BuildingBlockSettings.generated.h"

/**
 * 该类在项目设置中添加一项配置面板，用于对项目进行配置
 */
UCLASS(Config=BuildingBlock, DefaultConfig)
class BUILDINGBLOCK_API UBuildingBlockSettings : public UDeveloperSettings
{
	GENERATED_BODY()
public:
	/**
	 * 窗口名称，Project表示项目设置
	 * @return FName
	 */
	virtual FName GetContainerName() const;

	/**
	 * 大分类名称
	 * @return FName
	 */
	virtual FName GetCategoryName() const;
	
	virtual FName GetSectionName() const;

	/**
	 * 章节名称
	 * @return FText
	 */
	virtual FText GetSectionText() const;

	/**
	 * 章节描述信息
	 * @return FText
	 */
	virtual FText GetSectionDescription() const;

	/** 是否是开发模式 */
	UPROPERTY(Config, EditAnywhere, Category="开发设置", DisplayName="开发模式")
	bool bDevMode = false;
};
